In prior art systems, human interfaces are described with a standardized human interface description language (SIDL). The term “human interface” as used hereinafter, describes any kind of application interface for a human to interact with application programs that run on a computer. Examples for human interfaces are graphical user interfaces (GUI) or voice user interfaces (VUI).
Typically the SIDL is a “Extensible Markup Language” (XML) based language that provides a set of layout components. A layout component comprises description instructions that describe a specific element of the human interface. These description instructions are called layout element (LE), hereinafter. A transformer program, comprising transformation rules, transforms the layout element into a browser compliant description.
A browser, as used hereinafter, is a computer program that “renders” a document which is written, in a markup language, such as “Hyper Text Markup Language” (HTML), “Wireless Markup Language” (WML) or “Voice Extensible Markup Language” (VXML), into a visual or audio presentation of this document. A browser can be device specific. For example, a browser that renders a HTML document on a personal computer screen differs from a browser that renders a WML document on a wireless application protocol (WAP) cell phone display.
The browser compliant description can be rendered by a conventional browser into corresponding visual or audio layout elements on an output device of a computer as part of the human interface. In a SIDL, the layout elements typically have an application independent character, such as “row,” “cell,” “table,” “grid,” etc. Such layout elements can be reused in any context of any application.
In prior art human interfaces, often, the human interface is re-rendered in its initial state after a user interaction occurred. For example, when a user interacts with a web application by inputting data via the human interface and submitting the data to the web application, typically, after the submission of data the human interface shows all input fields with their initial values (e.g. empty or preset with a default value). Sometimes this is inconvenient because the user simply wants to correct a single input out of a plurality of inputs already made. In this case all previous inputs have to be re-entered. Also when complementing inputs already made earlier by a further input, all previous inputs have to be re-entered.